﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TMD.GT.Entidades;
using TMD.GT.AccesoDatos.Map;
using TMD.GT.AccesoDatos.Contrato;
using TMD.GT.AccesoDatos.Core;
using System.Data.Common;
using System.Data;

namespace TMD.GT.AccesoDatos.Implementacion
{
    public class CicloAlineamientoData: DataBase, ICicloAlineamientoData
    {
        public CicloAlineamientoData(String connectionString)
            : base(connectionString)
        {
        }


        public int InsertarCiclo(CicloAlineamiento ciclo)
        {
            try{
                using (DbCommand command = DB.GetStoredProcCommand("dbo.USP_CICLO_ALINEAMIENTO_INS"))
                {
                    DB.AddInParameter(command, "@CODIGO_ETAPA", DbType.Int32, ciclo.CODIGO_ETAPA);
                    DB.ExecuteNonQuery(command);
                }
                return 1;
            }
            catch(Exception ex)
            {
                return -1;
            }
        }



        public int ObtUltimaEtapa()
        {
            int iUltimaEtapa;

           try{
                using (DbCommand command = DB.GetStoredProcCommand("dbo.USP_ULTIMA_ETAPA"))
                {
                    
                    DB.AddOutParameter(command, "@ULTIMAETAPA", DbType.Int32, 4);
                    DB.ExecuteNonQuery(command);

                    iUltimaEtapa = Convert.ToInt32(DB.GetParameterValue(command, "@ULTIMAETAPA"));
                }
                return iUltimaEtapa;
            }
            catch(Exception ex)
            {
                return -1;
            }

           
        }

        public int ObtUltimaEtapaAlineamiento()
        {
            int iUltimaEtapa;

            try
            {
                using (DbCommand command = DB.GetStoredProcCommand("dbo.USP_ULTIMA_ETAPA_CODIGO"))
                {

                    DB.AddOutParameter(command, "@ULTIMAETAPA", DbType.Int32, 4);
                    DB.ExecuteNonQuery(command);

                    iUltimaEtapa = Convert.ToInt32(DB.GetParameterValue(command, "@ULTIMAETAPA"));
                }
                return iUltimaEtapa;
            }
            catch (Exception ex)
            {
                return -1;
            }


        }







    }
}
